﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Summary description for Quesito
/// </summary>
public partial class Quesito
{
    public static bool createQuesito(Quesito quesito)
    {
        try
        {
            DataClassesDataContext dc = new DataClassesDataContext();
            dc.Quesitos.InsertOnSubmit(quesito);
            dc.SubmitChanges();
            return true;
        }
        catch (Exception ex)
        {
            return false;
        }
    }
    public static Quesito findQuesitoById(Guid id)
    {
        DataClassesDataContext dc = new DataClassesDataContext();
        return dc.Quesitos.Single(p => p.id.Equals(id));
    }
    public static bool changeQuesito(Quesito quesito)
    {
        try
        {
            DataClassesDataContext dc = new DataClassesDataContext();
            Quesito quesitoAqui = dc.Quesitos.Single(p => p.id.Equals(quesito.id));
            quesitoAqui.descricao = quesito.descricao;
            quesitoAqui.idEvento = quesito.idEvento;
            quesitoAqui.notaFinal = quesito.notaFinal;
            quesitoAqui.notaInicial = quesito.notaInicial;
            quesitoAqui.peso = quesito.peso;
            quesitoAqui.status = quesito.status;
            quesitoAqui.titulo = quesito.titulo;
            dc.SubmitChanges();
            return true;
        }
        catch(Exception ex)
        {
            return false;
        }
    }
    public static List<Quesito> findQuesitoByEvento(Guid idEvento)
    {
        DataClassesDataContext dc = new DataClassesDataContext();
        return dc.Quesitos.Where(p => p.idEvento.Equals(idEvento)).ToList();
    }
    public static bool excludeQuesito(Guid idQuesito)
    {
        try
        {
            DataClassesDataContext dc = new DataClassesDataContext();
            Quesito quesito = dc.Quesitos.Single(p => p.id.Equals(idQuesito));
            dc.Quesitos.DeleteOnSubmit(quesito);
            dc.SubmitChanges();
            return true;
        }
        catch (Exception ex)
        {
            return false;
        }
    }
    public static Quesito changeStatus(Quesito quesito)
    {
        DataClassesDataContext dc = new DataClassesDataContext();
        Quesito quesitoAntigo = dc.Quesitos.Single(p => p.id.Equals(quesito.id));
        if (quesitoAntigo.status == true)
            quesitoAntigo.status = false;
        else
            quesitoAntigo.status = true;
        dc.SubmitChanges();
        try
        {
            return quesitoAntigo;
        }
        catch (Exception ex)
        {
            return new Quesito();
        }
    }
}